/**
 *     "vxe-table": "^3.4.6",
 * "xe-utils": "^3.4.3"
 */


import XEUtils from 'xe-utils'
import {
  Colgroup,
  Column,
  Edit,
  Filter,
  Footer,
  Header,
  Icon,
  Keyboard,
  Menu,
  Table,
  Validator,
  VXETable
} from 'vxe-table'
import zhCN from 'vxe-table/lib/locale/lang/zh-CN'
import VXETablePluginElement from './elementConfig/index'
import './elementConfig/style.scss'

// 按需加载的方式默认是不带国际化的，自定义国际化需要自行解析占位符 '{0}'，例如：
VXETable.setup({
  i18n: (key, args) => XEUtils.toFormatString(XEUtils.get(zhCN, key), args)
})


VXETable.use(VXETablePluginElement)

import MyVxeTable from './table.vue'


const ZhiXinTable = {
  install(Vue, options: any) {
    // 表格功能
    Vue.use(Header)
      .use(Footer)
      .use(Icon)
      .use(Filter)
      .use(Edit)
      .use(Menu)
      // .use(Export)
      .use(Keyboard)
      .use(Validator)

      // 可选组件
      .use(Column)
      .use(Colgroup)

      // 安装表格
      .use(Table)
    Vue.component('ZhiXinTable', MyVxeTable)
  }
}

export default ZhiXinTable
